package com.yuanhua.xcxmng.wechat.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * @author hzy24985
 * @version $Id: WechatResult, v 0.1 2018/8/7 下午3:33 hzy24985 Exp $
 */
@Data
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@AllArgsConstructor
public class WechatResult<T> extends BaseResult {
    /** id */
    private T data;

    public WechatResult(T data, int errorCode, String errorMessage) {
        super(errorCode, errorMessage);
        this.data = data;
    }

    /**
     * 成功。
     * @return 返回成功的结果。
     */
    public static <T> WechatResult<T> success() {
        WechatResult<T> result = new WechatResult<>();
        result.setSuccess(true);
        return result;
    }

    /**
     * 成功。
     * @return 返回成功的结果。
     */
    public static <T> WechatResult<T> success(T data) {
        WechatResult<T> result = new WechatResult<>();
        result.setSuccess(true);
        result.setData(data);
        return result;
    }

}
